Athletic performance and technique monitoring

ABSTRACT

Methods and apparatuses for athletic performance and technique monitoring are disclosed. In one example, a sensor output is received associated with a movement of a user torso during a running motion. The sensor output is analyzed to identify an undesirable torso motion.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a Continuation Application of application Ser. No.15/613,114 filed Jun. 2, 2017, which is a Continuation Application ofapplication Ser. No. 15/375,524 filed Dec. 12, 2016 (Issued as U.S. Pat.No. 9,669,259), which is a Continuation Application of application Ser.No. 13/487,024 filed Jun. 1, 2012 (Issued as U.S. Pat. No. 9,533,182),which is a Continuation Application of application Ser. No. 13/422,878filed Mar. 16, 2012 (Issued as U.S. Pat. No. 8,573,982), which claimspriority to Provisional Patent Application No. 61/453,960, to Thomas C.Chuang, and filed Mar. 18, 2011, the entire disclosures of which areincorporated herein by reference for all purposes.

This application is related to co-pending application Ser. No.15/355,412 filed Nov. 18, 2016, which is a Continuation Application ofapplication Ser. No. 13/487,024.

BACKGROUND OF THE INVENTION

Proper running form is essential for a runner to achieve his or her bestresults. In the prior art, various systems exist to monitor runningparameters such as speed, distance, heart rate, and cadence. However,parameters such as these do not directly monitor the form or techniqueof a runner. As a result, methods and apparatuses for athleticperformance monitoring associated with technique or form are needed.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be readily understood by the followingdetailed description in conjunction with the accompanying drawings,wherein like reference numerals designate like structural elements.

FIG. 1 illustrates a system for athletic performance monitoring beingworn by a runner in one example.

FIG. 2 illustrates a simplified block diagram of a wrist worn componentof the system shown in FIG. 1.

FIG. 3A illustrates a simplified block diagram of a foot mountedcomponent of the system shown in FIG. 1.

FIG. 3B illustrates a simplified block diagram of a torso mountedcomponent of the system shown in FIG. 1.

FIG. 4 illustrates an example of an athletic performance monitoringarrangement.

FIG. 5 illustrates a running progression of a runner wearing the systemfor athletic performance monitoring in one example.

FIG. 6 illustrates a graph showing a typical output signal of a sensormounted on a runner foot during locomotion.

FIG. 7 illustrates an exemplary processing method.

FIG. 8 is a flow diagram illustrating a method for monitoring a userstride in one example.

FIG. 9 is a flow diagram illustrating a method for monitoring a userstride in a further example.

DESCRIPTION OF SPECIFIC EMBODIMENTS

Methods and apparatuses for athletic performance and techniquemonitoring are disclosed. The following description is presented toenable any person skilled in the art to make and use the invention.Descriptions of specific embodiments and applications are provided onlyas examples and various modifications will be readily apparent to thoseskilled in the art. The general principles defined herein may be appliedto other embodiments and applications without departing from the spiritand scope of the invention. Thus, the present invention is to beaccorded the widest scope encompassing numerous alternatives,modifications and equivalents consistent with the principles andfeatures disclosed herein. For purpose of clarity, details relating totechnical material that is known in the technical fields related to theinvention have not been described in detail so as not to unnecessarilyobscure the present invention.

Methods and apparatuses are described for determining proper arm swingduring an athletic activity. Proper arm swing during running isimportant for several reasons. A proper arm swing, operating fluidly inconjunction with the runner's legs serves to reduce the energy needed topropel the runner forward. Furthermore, proper arm swing assists inspeed production, power transfer, and maintaining foot cadence.

Proper arm swing requires that the arms move in synchronization with thelegs on opposite sides of the body. In other words, the runner's leftarm swings forward as the right leg is moving forward and vice versa.The counter movement of the opposing arm and leg operates to balance therunner, conserve energy, and propel the runner forward with momentum.The rhythm of the arms coordinates the efficiency and propulsion of thelegs.

This synchronization of the arms and legs stabilizes the runner torso,minimizing rotation of the torso and directing runner energy intoforward motion. Over-rotation of the torso results in wasted energy,thereby causing the runner to fatigue more quickly or run slower.

Methods and apparatuses are described for determining proper user torso(also referred to herein as the user “trunk”) motion during running.Proper torso motion during running is important for several reasons. Aproper torso motion, operating fluidly in conjunction with the runner'slegs and arms serves to reduce the energy needed to propel the runnerforward.

Proper torso motion requires that the user avoid unnecessary verticaldisplacement during the running stride. In other words, the runnershould avoid an unnecessarily bouncy stride whereby the runner iswasting energy propelling himself or herself in an excessively upwarddirection instead of a forward direction. Unnecessary verticaldisplacement results in wasted energy, thereby causing the runner tofatigue more quickly or run slower.

Proper torso motion also requires that the user avoid unnecessary torsorotation during the running stride. Over-rotation of the trunk resultsin wasted energy, thereby also causing the runner to fatigue morequickly or run slower. Over-rotation of the trunk may cause delays inthe runner arm swing in a proper forward and back motion, therebycausing a delay in the opposite leg. Again, this causes the runner torun slower. Correspondingly, problems with the runner arm swing and/orarm/leg synchronization may be identified by detecting unnecessary torsorotation. For example, excessive rotation of the runner arms about theuser torso or a lack of arm/leg synchronization may cause the runnertorso to rotate excessively.

Furthermore, the amount of torso motion allowed while still maintainingproper form may be dependent on user running speed. For this reason, incertain examples methods are apparatuses are described whereby whetherthe torso motion is determined to be unnecessary or excessive is basedon a current measured user speed.

A proper arm swing should be rhythmic and similar to a pendulum,providing a source of balance, power, and rhythm. The amplitude of thearm swing should scale upwards or downwards depending on the runnerspeed and stride length. The movement should be a direct back and forthmovement, without a rotational component about the user torso, sidewaysmovements, or angled movements. The arm back and forth directionalmovement matches the leg back and forth directional movements. The angleof the lower arm and upper arm at the elbow should be approximately 90degrees and may increase slightly as they are swung straight back. Theincrease of the angle at the elbow during take back allows for theopposite leg to complete its cycle of movement rearward.

The inventor has recognized that monitoring whether the userhands/wrists pass with close proximity to the user hips during thependulum swing is advantageous for several reasons. First, when the armsare swung in the proper back and forth rhythm with the proper angle atthe elbow, the user hand/wrist will pass in close proximity to the userhip in both the forward and reverse direction at the same proximity. Assuch, the determination that the user hands/wrists pass within closeproximity to the user hips is a reliable indicator of proper arm swingand arm angle. The inventor has recognized that the runner is lesslikely to swing the arms rotationally about the user torso if thehands/wrists are kept in proximity to the sides of the user hips duringthe pendulum swing instead of higher towards the runner chest area. Theproper back and forth pendulum swing (i.e., no rotation about the usertorso) and elbow angle is difficult, if not impossible to achieve if thehands are positioned to the side of the chest during the midpoint of theback and forth swing instead of the side of the hip. Second, when theuser hands/wrist are kept in close proximity to the user hips during thependulum swing, this allows the runner to more easily maintain ahips-forward running position. One biomechanical stride defect found inmany runners is often referred to as “overstriding,” where the runnerfoot lands in front of the runner body's center of gravity instead ofbeneath it. In a biomechanically proper stride, the runner's foot shouldland closer beneath the hips as opposed to far in front of the hips.Running with a hips-forward running position reduces overstriding byenabling the runner foot to land closer beneath the hips.

In one example, a method for monitoring a user stride includesmonitoring a user vertical displacement during a running stride,monitoring a user motion parameter associated with the running stride,and determining whether the user vertical displacement exceeds athreshold value, the threshold value dependent on the user motionparameter. In one example, the user motion parameter comprises a userhorizontal displacement during the running stride. A verticaldisplacement/horizontal displacement ratio may be determined. In oneexample, the user motion parameter comprises a user speed during therunning stride. The threshold value is adjusted upward when the userspeed increases and is adjusted downward when the user speed decreases.In one example, the method further includes outputting an alarmindicating the user vertical displacement exceeds the threshold value.In one example, the method further includes monitoring a striding angleutilizing a torso mounted sensor.

In one example a system for monitoring a user stride includes a sensorsystem and a device. The sensor system is adapted to be worn on a usertorso, and includes a first wireless transceiver. The device is adaptedto be worn on a user and includes a second wireless transceiverconfigured to receive a sensor system output from the first wirelesstransceiver, a user interface, a processor, and a memory comprising atorso analysis application configured to process the sensor systemoutput to determine a user torso motion during a running motion. Forexample, the user torso motion is a torso stride angle, verticaldisplacement or vertical acceleration, or torso rotation. In oneexample, the torso analysis application is further configured todetermine whether the user torso motion exceeds a threshold value. Analarm may be output if the threshold value is exceeded. The thresholdvalue may be specific to the user. In one example, the device furthercomprises a global positioning system unit configured to monitor a userspeed, wherein the threshold value is dependent on the user speed.

In one example, a computer readable storage memory stores instructionsthat when executed by a computer cause the computer to perform a methodfor monitoring a user stride. The method performed includes receiving asensor output associated with a movement of a user torso during arunning motion, and analyzing the sensor output to identify anundesirable torso motion. In one example, the undesirable torso motioncomprises a torso stride angle, a torso vertical displacement, a torsovertical acceleration, or a torso rotation in excess of a thresholdvalue. In one example, the method further includes receiving a userspeed data. The threshold value may be dependent on a user speed. Thethreshold value may be adjusted upward when the user speed increases andis adjusted downward when the user speed decreases.

FIG. 1 illustrates a system for athletic performance and techniquemonitoring being worn by a walker or runner 1 in one example. FIG. 1shows a walking or running person 1 wearing a sensor unit 2 around hiswrist and wearing athletic shoes to which a sensor unit 4 is attached.However, the sensor unit 4 may also be incorporated in the sole of theshoe or elsewhere on or within the shoe. The sensor unit 4 may also beattached directly to the foot of the person. The person 1 is alsowearing a sensor unit 6 around his torso.

Sensor units 2, 4, and 6 are placed on or attached to person 1 directlyor indirectly. For example, sensor units 2, 4, and 6 may be attached toor on, placed within, or otherwise integrated with worn shoes,accessories, clothing, or equipment. Sensor units 2, 4, and 6 may bemounted directly on runner 1 by adhesives, bands, straps, hooks, othermechanical connectors.

In some examples, the sensor unit 2 may be attached to the user's wristin an enclosure which is similar to a watch and combined with otherfunctionality such as timekeeping or with other sensors such thenavigation device. In further examples, the sensor unit 2 may beattached to the user's arm using an enclosure similar to an armband andcombined (i.e., integrated) with other devices such as a cellular phone,an audio device and/or the navigation device. The armband isparticularly useful for cellular phones having larger, rectangularhousings, including cellular phones such as “smartphones”.

In some examples, the sensor unit 4 may be attached to the top of auser's shoe with removable fasteners such as clips. In other examples,the sensor unit 4 may be inserted within the user's shoe, such as withina recess formed in the sole of the shoe.

In one example, the sensor unit 6 includes one or more sensors 50 (e.g.,accelerometers) or other inertial sensors and may be attached to theuser with a chest strap in an enclosure which may include other sensorssuch as a heart-rate monitor (HRM) sensor. In the example shown in FIG.1, sensor unit 6 includes sensors 50 a and 50 b which are triaxialaccelerometers mounted in parallel on both the left and right side ofthe runner 1 torso.

In further examples, the sensor unit 6 may be attached to the user'swaist using a belt, clip, or other means. In one example, one of thesensors 50 is oriented in sensor unit 6 so that the verticaldisplacement of the user torso (i.e., along an axis running between theuser foot and head) is monitored with each stride. In one example, thisvertical displacement (i.e., the variation in height off of the runningsurface) of the user torso is compared to the stride length to generatea vertical displacement/horizontal displacement ratio. Advantageously,utilizing a torso mounted accelerometer reduces the complexity ofcalculating the vertical displacement of the user relative to a footmounted sensor as the user torso does not move in a rearward directionat any time during striding. The vertical displacement/horizontaldisplacement ratio may be utilized to determine whether the user isundesirably exerting unnecessary energy in a vertical upwards directionfor a given horizontal displacement. In a further example, the verticaldisplacement may be compared to a horizontal velocity or horizontalacceleration. In a further example, a vertical acceleration/horizontalacceleration ratio is calculated.

For example, if the vertical displacement/horizontal displacement ratioexceeds a predetermined threshold value, an audible alarm may be outputto the user. In one example, the threshold value is specific to theuser. For example, the system including sensor unit 4 and sensor unit 6may enter a learning/teaching mode whereby the user runs in the desiredform for a test interval and the target vertical displacement/horizontaldisplacement ratio is measured. For example, during the learning mode,the runner may focus on avoiding unnecessary excess verticaldisplacement or vertical acceleration. In a further example, thethreshold ratio value is determined using test measurements of otherrunners or established norms and stored by the system prior to use bythe runner.

In a further example, the measured motion parameter utilized is thevertical displacement by itself. For example, if the verticaldisplacement exceeds a predetermined threshold value, an audible alarmmay be output to the user. In one example, the threshold value isspecific to the user. For example, the system including sensor unit 6may enter a learning mode whereby the user runs in the desired form fora test interval and the target vertical displacement is measured. In afurther example, the threshold value is determined using testmeasurements of other runners or using established norms and stored bythe system prior to use by the runner. In yet another example, thethreshold value is set to a specific amount. For example, the thresholdvalue may be set to approximately between 2 to 4 inches. In yet anotherexample, the threshold value is adjusted in real-time based upon thespeed of the user. For example, as the speed of the user increases whilerunning, the threshold value may be adjusted in an upward direction. Asthe speed of the user decreases while running, the threshold value maybe adjusted in a downward direction. As described elsewhere herein,threshold values may be set or determined in a variety of ways,including a learning mode whereby values are set specific to the userand/or preset during manufacturing based on tests of other runners, suchas elite runners known to perform at high levels, or based ontheoretical calculations.

In one example, the vertical threshold is adjusted upward as the userincreases speed in the direction of locomotion and adjusted downward asthe user decreases speed. Again, the amount of adjustment maybeset/calibrated specific to the user based on the learning mode tests atdifferent speeds and/or pre-set during manufacturing. The averagevertical displacement/horizontal displacement ratio or the averagevertical displacement over a given time or distance interval may becalculated and output to the user in real time or during subsequentworkout analysis.

Sensor units 2, 4, and 6 are operable to sense data associated with theathletic performance such as physical or physiological data. Forexample, sensor unit 4 may output a signal which is processed todetermine step count, step impact, velocity, jump height, distance andother data associated with walking and running activities.

Sensor unit 2 may output a signal which is processed to determine armmotion of runner 1. Sensor unit 2 may also be operable to sense globalpositioning system (GPS) data, such as location and altitude data.Sensor unit 2 may use GPS satellites or other means, including cellulartowers, to determine location. Sensor unit 6 may also monitor time data.Sensor unit 6 may include sensors operable to sense heart rate,temperature and movement in the horizontal and vertical direction.

In further examples, any number of sensors may be provided to sense anydesired type of athletic performance information. Furthermore, as usedherein, the term “sensor” may refer to one or more sensors. Sensor ofvarying types may be placed at the same desired location on runner 1.For example, sensor unit 2 may include both an inertial sensor and a GPSlocator. Sensor unit 6 may include both an inertial sensor and a heartrate sensor.

Sensor units 2, 4, and 6 are operable to communicate wirelessly amongstthemselves. In the example shown in FIG. 1, sensor unit 6 is incommunication with sensor unit 2 via a wireless link 3 and sensor unit 4is in communication with sensor unit 2 via a wireless link 5.

Sensor unit 2 may also be configured to communicate with computingdevices, exercise devices, navigation devices, sensors, and any otherenabled devices through a communication network, such as a local areanetwork, a wide area network, or the Internet. Such communication mayoccur via wired or wireless links.

In the example shown in FIG. 1, sensor unit 2 for has been incorporatedinto a wrist-worn device. For example, wrist worn device may assume awatch form factor having some form of visual display and audio output.Data collected by sensor unit 4 and sensor unit 6 are transmitted tosensor unit 2 (i.e., the wrist worn device) for processing and/or outputtogether with data collected by sensor unit 2. The collected sensor datais processed, stored, and/or displayed at sensor unit 2.

In a further example, data collected by sensor units 2, 4, and 6 aretransmitted to an electronic device for processing, where the electronicdevice need not itself have a sensor. For example, the electronic devicemay be an MP3 or other type of digital music player, watch, handheldcomputing device, cellular telephone, or any other device capable ofdisplaying information or outputting audio. The electronic device mayprocess the received sensor data and output associated information tothe user via a user interface output such as a LCD display. Theelectronic device may be attached to the runner's body in any mannersimilar to that of a sensor so that it is easily carried, moved, heard,or viewed during running. Utilizing the user interface 7, real-timefeedback is provided as to the user's arm/opposite leg synchronization,arm rotation across the torso, and vertical/horizontal displacementratio.

FIG. 2 illustrates a simplified block diagram of a wrist worn component,sensor unit 2, of the system shown in FIG. 1. Although shown worn on thewrist, sensor unit 2 may be worn on the user's forearm or arm in furtherexamples. Sensor unit 2 includes a user interface 7. User interface 7includes an input device 12 and an output device 14. For example, inputdevice 12 may be one or more buttons, switches, a touch bezel, or atouch screen.

Output device 14 may include speakers for outputting audio and a visualdisplay screen. The output device 14 may also include a vibrate elementto notify users of information via mechanical vibration. Although shownintegrated with sensors 10 within sensor unit 2, in further examples,the user interface 7 can be positioned separately from any sensordevices. The user interface 7 may also include various processing andmemory devices to facilitate its functionality. The user interface 7 isoperable to receive inputs from the user to control the functionality ofthe sensor unit 2 and elements associated therewith.

Output device 14 enables users to receive real-time feedback concerningthe estimated motion parameter and associated information. For instance,the user interface 7 may present the currently estimated motionparameter, such as degree of synchronization between the user arm andopposite user leg, current stride speed and distance, and/or informationassociated therewith or with other motion parameters, such as totaldistance or combinations thereof.

In various examples, the user may configure the sensor unit 2 utilizingthe user interface 7 to monitor estimated motion parameters and alertthe user through the output device 14 when one or more estimated motionparameters either fall within or fall outside a user-defined conditionsuch as an acceptable parameter range, threshold, or variance.

Sensor unit 2 includes one or more sensors 10. In one example, sensors10 include one or more accelerometers. In one example, the accelerometeris a tri-axial accelerometer. In one example, the one or moreaccelerometers are linear accelerometers. In a further example, sensors10 include a gyroscope in addition to an accelerometer.

Sensor unit 2 also includes filters 16, controller 18, transceiver 20,power source 22, and memory 24. Controller 18 may include one or moresignal processors. In one example, power source 22 is a battery, whichmay be rechargeable or not rechargeable.

Memory 24 may include any computer-readable memory or combination ofcomputer-readable memories operable to store data for use by thecontroller 18. For instance, the memory may be operable to storeacceleration data, motion parameter metric data, statistical data,motion parameter data, filtering data, configuration data, or anycombination thereof.

The sensors 10, filters 16, and controller 18 may be integrated togetheror form discrete elements that may be associated with each other. Thecontroller 18 is operable to analyze measurements provided by thesensors 10 to estimate parameters corresponding to one or more parametertypes.

Controller 18 and its included processors are generally operable tocouple with the one or more sensors 10 to estimate a motion parametercorresponding to a motion parameter type. The controller 18 may includevarious analog and digital components operable to perform the variousfunctions discussed herein. For example, the controller 18 may include amicroprocessor, a microcontroller, a programmable logic device, digitaland analog logic devices.

The controller 18 additionally utilizes information acquired fromsensors other than the one or more sensors 10 via wireless links usingtransceiver 20 to enable real-time comparison of information generatedby various sensors in the system. For example, the controller 18receives information from sensor unit 4 and sensor unit 6 to generateone or more motion parameters using such information.

Similarly, the controller 18 may couple with other sensors to acquireany type of information, For example, to acquire additional information,the controller may couple with, and/or include, gyroscopes, altimeters,compasses, and pressure sensors, and other inertial sensors, or anycombination thereof, disposed at sensor unit 2, 4, 6, or elsewhere.

Utilizing various signal processing algorithms, the controller 18 mayanalyze and compare measurements provided by sensors 10, sensors 40, andsensors at sensor unit 6. For example, by identifying and/or comparingthe minimum(s), maximum(s), period, frequency, waveform, rate of change,combinations thereof, and the like, the processing system 16 may processthe acceleration signatures to determine one or more motion parameters.Controllers at each sensor unit 4 and 6 may implement similar signalprocessing algorithms.

In a further example, sensor unit 2 includes a navigation device adaptedto provide geographic location information. The navigation device mayinclude a GPS receiver or may use cellular or other positioning signalsinstead of the GPS to determine geographic position and generatenavigation information. For example, the navigation device is operableto determine speed, current and previous locations, bearing and heading,and altitude. In further examples, the various components of the sensorunit 2 may be housed integrally or separately in any combination.

In one example, undesirable arm swing in a circular direction across thefront of the user torso (as opposed to the desirable swing directionmaintained back and forth along an axis or plane defined by thedirection of movement) is measured with two accelerometers, a triaxialaccelerometer, or a gyroscope housed within sensor unit 2. In oneexample, measured translational accelerations are used to computeangular acceleration which can be doubly integrated to obtain the amountof arm swing in a plane substantially perpendicular to the direction oftravel.

FIG. 3A illustrates a simplified block diagram of a foot mountedcomponent, sensor unit 4, of the system shown in FIG. 1. Sensor unit 4includes sensors 40, filters 42, controller 44, transceiver 46, powersource 48, and memory 49. Controller 44 may include one or more signalprocessors. In one example, power source 48 is a battery.

Sensor unit 4 includes one or more sensors 40. In one example, sensors40 include one or more accelerometers. In a further example, sensors 40include a gyroscope in addition to an accelerometer. In one example, theaccelerometer is a tri-axial accelerometer. In one example, the one ormore accelerometers are linear accelerometers.

The sensors 40, filters 42, and controller 44 may be integrated togetheror form discrete elements that may be associated with each other. Thecontroller 44 is operable to analyze measurements provided by thesensors 40 to estimate parameters corresponding to one or more parametertypes.

The one or more sensors 10 and 40 are each operable to measure anacceleration and generate an acceleration measurement corresponding tothe measured acceleration. The acceleration measurement may be embodiedas a signal operable to be utilized by the filters 16 and 42 and/orcontrollers 18 and 44.

In some embodiments, one or more of the sensors 10 and 40 may beoperable to output an analog signal corresponding to an accelerationmeasurement. For instance, each accelerometer may output an analogvoltage signal that is proportional to measured accelerations.

However, the one or more sensors 10 and 40 may include any digital andanalog components operable to generate a signal corresponding to ameasured acceleration. Thus, in some embodiments, one or more of thesensors 10 and 40 are operable to output a digital signal representingmeasured accelerations. Further, in some embodiments, one or more of thesensors 10 and 40 may comprise linear accelerometers.

In some embodiments, more than one of the sensors 10 and 40 may beintegrated into the same integrated circuit package to allow the singlepackage to provide acceleration measurements along more than one axis.Sensors 10 and 40 may each include two or more accelerometers eachoperable to output a signal corresponding to a measured acceleration.

In some examples, sensors 10 and 40 each include two accelerometersadapted to measure accelerations in two directions separated by an anglegreater than zero degrees and each provide a signal corresponding to themeasured acceleration. In some examples, sensors 10 and 40 may eachinclude at least three accelerometers adapted to measure accelerationsin three directions each separated by an angle greater than zero degreesand each provide a signal corresponding to the measured acceleration. Insome embodiments, the three accelerometers may be oriented in a mutuallyperpendicular configuration. In one example, sensors 10 and sensors 40are each a triaxial accelerometer. However, sensors 10 and 40 mayinclude any number of accelerometers, including a single accelerometerpositioned in any configuration to provide acceleration measurements.

Transceiver 20 and transceiver 46 are configured for wirelesscommunication using various RF protocols. For example, transceiver 20and transceiver 46 may communicate utilizing Bluetooth, ANT, and/or anyother wireless protocols.

The filters 16 and 42 are operable to couple with the one or moreaccelerometers and filter acceleration measurements and/or signalscorresponding to acceleration measurements. The filters 16 and 42 mayinclude analog and digital components operable to filter and/or provideother pre-processing functionality to facilitate the estimation ofmotion parameters by the processors at controllers 18 and 44. In variousexamples, the filters 16 and 42 are operable to filter signals providedby the one or more accelerometers, or signals derived therefrom, toattenuate perpendicular acceleration, to compensate for gravity, and/orto minimize aliasing. The filters 16 and 42 may include discretecomponents for performing each of these filtering functions or use thesame components and hardware for these, and other, filtering functions.

The anti-aliasing provided by the filters 16 and 42 generally reduces orprevents aliasing caused by sampling of the signals provided by, orderived from, the one or more accelerometers. In some embodiments, thefilters 16 and 42 include a relatively wideband filter designed toattenuate signal frequencies in excess of one-half of the samplingfrequency used in any subsequent analog-to-digital conversions providedby the controllers.

The filters 16 and 42 may include any analog and digital components forfiltering signals and measurements, including passive and activeelectronic components, processors, controllers, programmable logicdevices, digital signal processing elements, combinations thereof, andthe like. The filters 16 and 42 may also include an analog-to-digitalconverter to convert analog signals provided by the one or moreaccelerometers to digitize signals for use by the processors atcontrollers 18 and 44. The filters 16 and 42 may also includeconventional pre-sampling filters. In some examples, the low-pass filter18 may be an adaptive filter operable to employ static and/or varyingcut-off frequencies between about 0.5 Hz and 10 Hz.

In one example, sensor unit 6 worn about the user chest containssubstantially similar components to that of sensor unit 4 illustratedand described in reference to FIG. 3A. In one example, sensor unit 6includes a heart rate monitor to advantageously benefit from itsposition across the user chest.

FIG. 3B illustrates a simplified block diagram of a torso mountedcomponent, sensor unit 6, of the system shown in FIG. 1. Sensor unit 6includes sensors 50, filters 52, controller 54, transceiver 56, powersource 58, and memory 60. Controller 54 may include one or more signalprocessors. In one example, power source 58 is a battery. Operation ofthe various components of sensor unit 6 are substantially similar tothat of the similarly named components of sensor unit 4 described abovewith respect to FIG. 3A.

Sensor unit 6 includes one or more sensors 50. In one example, sensors50 include one or more accelerometers. In one example, the sensors 50include a gyroscope. In one example, the sensors 50 include a heart ratemonitor. In one example, the one or more accelerometers include one ormore tri-axial accelerometers. In one example, the one or moreaccelerometers are linear accelerometers. In one example, sensors 50include a pair of sensors 50 a and 50 b which are parallel spacedtriaxial accelerometers as shown in FIG. 1.

Depending upon the location of the sensor, one or more motion analysisalgorithms may be used to determine one or more motion parameters.Sensor unit 2, sensor unit 4, and sensor unit 6 may store in memory adatabase of motion analysis algorithms corresponding to variouscombinations of attachment positions and motion classifications asappropriate. For example, the memory may include motion analysisalgorithms for: foot, chest, and arm attachment locations.

Utilizing one or more selected motion analysis algorithms andacceleration signals provided by the sensors, the sensor unit 2, sensorunit 4, or sensor unit 6 may estimate, calculate, identify, or otherwisedetermine one or more motion parameters. For example, the motionparameter may correspond to direction of movement of a user leg or armin any direction, degree of synchronization of movement of an oppositeuser arm and leg, vertical displacement of the user torso (andeffectively, the user head), rotation of the user torso, side to side(i.e., left to right or horizontal) movement of the user torso in aplane centered between the front and back of the runner substantiallyperpendicular to the direction of locomotion, rotation of the user armabout the user torso or movement of the user arm in a side to sidedirection, stride speed, acceleration, velocity, stride distance, totaldistance, gait efficiency, energy, maximum impact, speed variability,strike time, steps, step cadence (e.g., number of steps per minute, alsoreferred to herein as “stride rate” herein) and combinations thereof, orany other motion parameter described herein. Furthermore, the motionparameter determined may correspond to any parameter associated with themotion of the user. In one example, motion parameters are calculated ateach individual sensor unit 2, sensor unit 4, and sensor unit 6. In afurther example, sensor unit 2 receives data from sensor unit 4 and/orsensor unit 6 and calculates motion parameters.

In one example, the output of sensors 40 at sensor unit 4 is processedto determine the time at which a stride begins and ends by determiningwhen a runner's foot impacts the ground, when a runner's foot leaves theground, and when a runner's foot is stationary relative to the ground.By analyzing various changes in measured accelerations, the controller44 or controller 18 may compute the stride direction and duration andinformation corresponding thereto, such as stride frequency. The stridefrequency may represent the number of strides per second or otherindications of the rate of stride.

In various embodiments, the controller 18 is operable to compute themotion parameter metrics and/or estimate the motion parameters for eachdetected stride to facilitate the accurate analysis of movement, wherethe motion parameters are associated with sensor unit 2, sensor unit 4,and/or sensor unit 6. Alternatively, motion parameter metrics arecalculated for each detected stride at sensor unit 2, 4, and 6,respectively.

In one example, sensor units 2, 4, and 6 are accelerometer-based sensorunits. Sensor units 2, 4, and 6 each include one or more accelerometersand an amplifier circuit (including a high-pass filter integratedtherein). The accelerometer or accelerometers in each unit may compriseany of numerous devices or circuits capable of detecting acceleration ofthe body part to which the sensor unit is attached and produce an outputsignal in response thereto, and the invention is not limited to the useof any particular type of accelerometer. In further examples, theaccelerometer may be replaced with other suitable devices which mayalternatively be used

Sensor units 2, 4, and 6 include accelerometers arbitrarily orientedrelative to the direction of user motion for generation of a signalcorresponding to user motion. Sensors may be placed in any location orcombination of locations on his or her body.

In one example, the accelerometers are piezo-electric accelerometers,such as those manufactured by Murata or Analog Devices, Inc. The sensorunits include amplifiers which amplify the acceleration signal from theaccelerometer to a level suitable for an analog-to-digital converter(A/D converter or ADC) which converts the amplified analog accelerationsignal to a digital signal. The digital signal is supplied to amicroprocessor which performs the analysis of the waveform of theacceleration sensor signal, the computation of the speed, stride lengthand other parameters of the running person. The electronic componentsnecessary to perform the functions of the sensor unit 2, 4, and 6 may bemounted on a small printed circuit board, which is placed in a housingto be attached to the desired runner body part.

The example system shown in FIG. 1 includes a sensor unit 4 system shownin FIG. 3A for sensing and transmitting some type of athleticperformance data. More specifically, in this example structure, athleticperformance data (e.g., physical or physiological data associated withan athletic performance) is sensed by sensor(s) 40, and data from thesesensor(s) is sent to the sensing system's processing system, e.g., amicroprocessors at controller 44, which optionally may cause the data tobe stored (e.g., in a storage system or memory 49), further processed,etc. A power source 48 may be provided to operate the various componentsof the sensor unit 4 system, such as the sensors 40, the controller 44and associated microprocessors, the transceiver 46, memory 49, and/orany other necessary or desired components. If desired, themicroprocessor on board the sensor unit 4 system, if any, may processthe sensor data, change its form or format, or otherwise manipulate thedata prior to sending it on to other parts of the system, such as tosensor unit 2.

At an appropriate or desired time (e.g., when a data request isreceived, periodically, automatically, upon user demand, etc.), thesensor unit 4 system may send at least some portion of its data (e.g.,raw data directly from one or more of the sensors, data derived at leastin part from the raw data, etc.) to the sensor unit 2, illustrated inFIG. 2, for further processing and/or eventual output to a user via userinterface 7. This may be accomplished, for example, as shown in FIG. 1,via a wireless data transmission system (e.g., from wireless datatransfer or transceiver element 46 in the sensor unit 4 system towireless data receiving element transceiver 20 in the sensor unit 2) orin any other desired manner without departing from this invention. Anydesired wireless protocol, broadcast protocol, or other datatransmission protocol may be used without departing from the invention.

Once received at the sensor unit 2, the athletic performance data may befurther processed, if necessary or desired, and then supplied to theprocessing system (e.g., a microprocessor at controller 18) of thesensor unit 2. This may be accomplished at any suitable desired time ortiming (e.g., when a data request is received, automatically,periodically, on user demand, etc.) based on the measured motionparameter without departing from this invention. From there, the datamay be further processed, if necessary or desired, and then sent to anoutput device in a form suitable for output to a user (e.g., in audio,video, and/or alphanumeric form, etc.).

FIG. 4 illustrates an example of an athletic performance monitoringarrangement. During operation, sensor 10 movement 62 results in a sensor10 output signal 63 which is sent to preliminary signal processing 64.In one example, preliminary signal processing 64 includes amplifying,filtering, signal detection, and transmission. Following preliminarysignal processing 64, a processed sensor 10 output is sent tocalculation unit 66 for further processing.

Similarly, sensor unit 40 movement 68 results in a sensor unit 40 outputsignal 69 which is sent to preliminary signal processing 70. In oneexample, preliminary signal processing 70 includes amplifying,filtering, signal detection, and transmission. Following preliminarysignal processing 70, a processed sensor unit 40 output is sent tocalculation 66 for further processing.

Similarly, sensor unit 50 movement 74 results in a sensor unit 50 outputsignal 75 which is sent to preliminary signal processing 76. In oneexample, preliminary signal processing 76 includes amplifying,filtering, signal detection, and transmission. Following preliminarysignal processing 76, a processed sensor unit 50 output is sent tocalculation 66 for further processing.

Calculation unit 66 receives multiple sensor output signals forcalculating various desired motion parameters as described herein.Calculation 66 includes one or more signal receivers for receiving thesensor signals associated with the measurement variable from sensors 10,sensors 40, sensors 50, or any other system sensors. In certainexamples, data from only select sensors is received and processed,depending on the desired motion parameter to be monitored. The one ormore signal receivers also receive other information. Calculation unit66 also includes signal processing for processing all of the receivedinformation. In operation, calculation unit 66 may perform processingfunctions including reception of sensor signals, clocking,synchronization, counting, timing, and signal detection.

The athletic performance monitoring arrangement illustrated in FIG. 4includes processing to determine the motion parameters described herein.In one example, the determination of whether the runner arm and legmotions are synchronized are determined as described below in referenceto FIGS. 5-7 utilizing the accelerometer output signals. Calculatedmotion parameter data is output to user 72 as set by the user via a userinterface.

In various examples, the essential functions of the performancemonitoring and measuring arrangement described can be implemented usingseparate components, integrated circuits, ASIC circuits, software or anycombination of these. In one example, the software is stored at memory24 and executed by controller 18 to perform functions as describedherein. Various functions can be distributed among several components orperformed at a single component as desired.

FIG. 5 illustrates a running progression of a runner wearing the systemfor athletic performance monitoring in one example. FIG. 5 shows arunning person 1 wearing a right shoe 540 with built-in sensor unit 4.The arrow 534 indicates a forward direction of acceleration of the shoe540 along the line between the nose and heel of the shoe 4. The arrow534 indicates a forward direction of acceleration of the sensor unit 2(i.e., the runner left arm 542). As shown in FIG. 5, the forwarddirection is the direction in which runner 1 is running. The sensorunits 2 and 4 should be mounted and oriented to be sensitive in thedirection indicated with the arrows in FIG. 5. For example, the sensorunit 4 comprises an acceleration sensor unit 4 mounted in such a waythat it senses acceleration in a direction substantially parallel to aline between the nose and the heel of the shoe 540.

In the running progression shown in FIG. 5, various time progressivesnapshots 502 through 532 of the runner 1 are shown. The runner 1 iswearing a sensor unit 2 in the form of a wristwatch on a left arm 542and is wearing sensor unit 4 on a right leg 544. In a further example,the runner 1 may wear sensor unit 2 on a left arm and wear sensor unit 4on a right leg. In this example, sensor unit 2 and sensor unit 4 areworn are worn on opposite sides of the body (i.e., right side versusleft side). Thus, if sensor unit 2 is worn on a right arm, sensor unit 4is worn on the left leg. If sensor unit 2 is worn on a left arm, sensorunit 4 is worn on a right leg.

At snapshot 510, the runner right shoe 540 is or has just left theground, referred to also as “toe-off” event, in a rearward direction 546(i.e., a direction opposite the forward running direction) and upwarddirection. Overlapping with the rearward and upward direction of theright shoe 540, the runner left arm 542 is swung in a rearward direction(i.e., a direction opposite the forward running direction).

At snapshot 520, the runner right shoe 540 has reached its maximumrearward back kick height and is about to be begin its swing forward inthe forward direction 534. At snap shot 522, the runner right shoe 540is moving forward in forward direction 534, toward its maximum forwardacceleration. Overlapping with the forward direction of the right shoe540, the runner left arm 542 is swung in the forward direction 534.

At snap shot 532, the runner right shoe 540 has landed on the runningsurface, referred to as a foot strike event, returning to the positionshown in the start of the stride in snapshot 502. Snap shot 532illustrates the completion of one stride of the user right foot began atsnap shot 502. During locomotion the runner will then repeat thesequence shown in snap shots 502-532.

In the runner stride between a toe-off event and a foot strike event fora given foot, the foot is in the air for a “foot in air” amount of time.In the runner stride after foot strike but before toe-off, the foot ison the ground for a “foot on ground” amount of time. Snapshots 502 to532 show a sequence in which the runner left arm 542 and right leg 544are desirably substantially synchronized in direction, with overlappingmovement in either the rearward direction or forward direction.

Systems and methods described herein are operable to detect whether leftarm 542 and the right leg 544 are desirably synchronized in either therearward or forward direction or whether they are substantiallyunsynchronized such that the left arm 542 is substantially movingforward while the right leg 544 is moving rearward, or vice versa. Thedegree of synchronization may be measured. For example, the amount ofoverlap between movement of both left arm 542 and right leg 544 in thesame direction is monitored. A threshold amount of overlap may be set,above which synchronization is determined to be present and below whichsynchronization is determined not to be present.

In one example, the threshold amount of overlap is set using thelearning/calibration mode described above whereby a user runs with adesired synchronization between the opposite arm and leg and the amountof overlap in the same direction is measured and set as the thresholdvalue or used as the basis for setting the threshold value. For example,the actual threshold value used during regulation operation (i.e.,non-learning mode) is set slightly below the measured threshold value.

FIG. 6 illustrates a graph showing an exemplary typical output signal ofa sensor mounted on a runner foot during locomotion. FIG. 6 shows anexample of an amplified accelerometer output signal 602 that may beprovided by the sensor unit 4 to the controller 44 when the runner 1 isin locomotion on foot. Output signal 602 may be converted into digitalvalues.

As also shown in FIG. 6, the signal 602 may fluctuate dynamically inresponse to movement of the user's foot that occur when the user iswalking or running. When the level of the signal 602 is greater thanzero, this indicates that the accelerometer is sensing a positiveacceleration along the acceleration sensing axis, and when the level ofthe signal 602 is less than zero, this indicates that the accelerometeris sensing a negative acceleration along the acceleration axis. Theacceleration signal 602 is subjected to an algorithm executed by amicroprocessor.

Particular characteristics of the signal 602 may be identified which areindicative of particular occurrences during each footstep. In oneexample, signal 602 is analyzed to (1) identify occasions when theuser's foot first leaves the walking or running surface after havingbeen in contact with the ground during a footstep (e.g., a “toe-off”events), (2) to identify occasions when the user's foot first impactsthe ground after having been airborne (e.g., “foot strike” events), (3)to identify occasions when the user's foot is airborne, (4) to identifyoccasions when the user's foot is moving forward in the direction oflocomotion, and (5) to identify occasions when the user's foot is movingrearward opposite the direction of locomotion.

The relatively small negative peaks 604 indicate the beginning of astride which corresponds to the moment the shoe leaves the ground andstarts moving rearward and upward (i.e., a toe-off event). The zerocrossing 608 after the large negative peak 606 indicates the end of thestride which corresponds to the moment the shoe lands on the groundagain (i.e., a foot strike event). Following foot strike, but beforetoe-off, the user foot is in contact with the ground for a period oftime (“foot on ground time”). Following toe-off, but before foot-strike,the user foot is in the air (“foot in air time” or simply “air-time”).The stride time may be measured as the time between zero crossings afterthe large negative peak 606.

In one example, an algorithm identifies the beginning and end of astride. The signal 602 is analyzed to find the relatively small negativepeaks 604 in the signal which are indicative of the beginning of astride and the relatively large negative peaks 606 just before the zerocrossings 608 which are indicative of the end of a stride. For example,negative peaks are detected by monitoring when the first derivative ofthe acceleration signal changes from negative to positive. Further, asmoothed version of the acceleration signal 602 is constantly monitored.Finally two minima are logged, the overall minimum and a local minimumsomewhere around the smaller negative peak 604 at the moment the footleaves the ground. When, at a certain negative peak, the value of theacceleration signal is below a certain limit, the peak is detected. Thislimit lies half way between the smoothed signal and the minimum.

In one example, toe-off events are identified by monitoring the signal602 for characteristics that indicate a toe-off event may havepotentially occurred. For example, one characteristic in the signal 602indicative of a potential toe-off event is a large inflection in thesignal 602. In this example, inflections in the signal 602 are monitoredto identify and to continuously update the identification of a largestinflection to occur in the signal 602 subsequent to the most recentfoot-strike event.

In a further example, toe-off events are identified by monitoring thesignal 602 for characteristics that indicate the foot is definitelyairborne. Such characteristics are referred to herein as the signal's“air signature”. The air signature may, for example, be an identifiedperiod of relative smoothness substantially free from sharp transitionsin the signal 602. When it is determined that the foot is airborne(i.e., an air signature is identified), the most recently identifiedpotential toe-off event is identified as the actual toe off event. Theend of the stride can be recognized comparatively easily in theacceleration signal 602, because the hard strike of the foot's landingon the ground causes high acceleration peaks 610 and 612, for example.

In one example, foot-strike events may be identified by monitoring thesignal 602 for sudden, sharp inflections following the relatively smoothcondition of the signal 602 generated while the foot is airborne. In oneexample, characteristics of the signal 602 are monitored to determinewhether the signals satisfy at least one of a plurality of predeterminedcriteria consistent with the occurrence of a foot-strike event. In oneexample, after an air signature of the signal 602 has been identified(i.e., it has been determined that the foot of the user is airborne), asubsequent sharp, positive peak 610 in the signal 602 is onecharacteristic in the signal 602 that is indicative of the foot of theuser impacting the running surface.

In one example, periods in which the user's foot is moving forward inthe direction of locomotion such as in a stepping motion may beidentified by monitoring the signal 602 for: (a) characteristics thatindicate the foot is airborne combined with period of negativeacceleration 622 with an increasing negative acceleration 614 leading toa large negative peak 606, or (b) characteristics that indicate a footstrike has occurred, where a period of negative acceleration prior tothe foot strike indicates movement in the forward direction, or (c) aperiod of negative acceleration prior to the relatively large negativepeaks 606 just before the zero crossings 608.

In one example, periods in which the user's foot is moving rearward in abackward and upward direction following initial toe-off may beidentified by monitoring the signal 602 for: (a) characteristics thatindicate the foot is airborne combined with period of positiveacceleration, or (b) the period of time immediately following toe-off,but prior to movement of the foot in an identified forward direction.

In one example, the algorithm performs a single and double integrationof the acceleration signal 602 during the integration time between thebeginning of the stride and the end of the stride. The singleintegration of the acceleration signal results in the speed v(t) of thetravelling foot as a function of time, while the double integral of theacceleration signal gives the travelled distance x(t) of the foot as afunction of time.

As shown in FIG. 6, the period of a complete footstep of the runner(i.e., a step time 616) may be measured between the identifiedfoot-strike events of the runner. The portion of each measured step time616 during which the user's foot is in contact with the running surface(i.e., a foot on ground time 620) may be measured between each detectedfoot-strike event and a subsequently-detected toe-off event 704.

The portion of each measured step time 616 during which the user's footis airborne (i.e., a foot in air time 618) may be measured between eachdetected toe-off event and a subsequently-detected foot-strike event.Thus, for each complete footstep taken by the user, an accuratemeasurement may be made of each step time 616 of the user, as well asthe portions of that step time 616 attributable to foot on ground time620 and foot in air time 618. A complete footstep means a movement cycleduring which the foot of a user begins in a particular position andagain returns to that same position. In one example, this informationmay be used by processors at the sensor unit 2 or sensor unit 4 toaccurately calculate the speed and/or pace of the user, the distancetraveled by the user, etc., during the corresponding footstep taken bythe user.

In one example, radio transmissions between the foot-mounted sensor unit4 and the wrist-mounted sensor unit 2 may be made only during the timeduring which the foot is on the ground because the controller 44 neednot be employed to monitor the signal 602 during these time periods.After each foot-strike event the foot of the user will necessarily be onthe ground for at least a minimum period of time, and it is notnecessary during this period of time to analyze the signal 602 toidentify potential occurrences of a toe-off event. Therefore, it ispossible to ignore the signals during this particular period of time.Similarly, in one example, calculations involving data accumulated bythe foot-mounted sensor unit 4 may be made only during this foot on theground time 620, thereby consuming processing power only during timeperiods when the signal 602 need not be actively analyzed.

Similar to the manner in which the accelerometer output signal of a footmounted accelerometer within sensor unit 4 is processed, theaccelerometer output signal of an arm mounted accelerometer withinsensor unit 2 is processed. However, analysis of the arm accelerationsignal is simplified in that the signal does not contain characteristicsassociated with a ground strike nor a period of time in which the armremains on the ground. Rather, during running, the user arm is typicallyswung forward and backward in a periodic manner. Sensor unit 2 andsensor unit 4 are synchronized in time and clocking to compare theoutputs of sensor unit 2 and sensor unit 4.

The arm acceleration signal may fluctuate dynamically in response tomovement of the user's arm that occur when the user is walking orrunning. In one example, the accelerometer is oriented such that whenthe level of the arm mounted accelerometer signal is greater than zero,this indicates that the accelerometer is sensing a positive accelerationalong the acceleration sensing axis, and when the level of the armmounted accelerometer signal is less than zero, this indicates that theaccelerometer is sensing a negative acceleration along the accelerationaxis. The accelerometer output signal may be converted into digitalvalues, in which case the positive/negative acceleration boundary may bean arbitrary positive value instead of zero.

The arm acceleration signal is subjected to an algorithm executed by amicroprocessor. In one example, a smoothed version of the armacceleration signal is constantly monitored to simplify monitoring. Forexample, a smoothed signal resembling a sinusoidal signal representingback and forth motion of the arm in a direction of sensitivity may bemonitored.

Particular characteristics of the arm acceleration signal may beidentified which are indicative of particular occurrences during eacharm swing. In one example, the arm acceleration signal is analyzedutilizing an algorithm to (1) identify occasions when the user's arm isbeing swung forward in the direction of locomotion, and (2) to identifyoccasions when the user's arm is being swung backward in a directionopposite the direction of locomotion, and (3) to identify occasionsand/or the extent to which the user's arm is being swung rotationallyabout the user's torso.

In one example, forward swings/movement of the arm are identified bymonitoring the arm acceleration signal for characteristics that indicatethe arm is being swung forward. In one example, the acceleration signalis analyzed to identify periods of negative acceleration. In oneexample, an increasing negative acceleration leading to a large negativepeak is identified.

In one example, rearward swings/movement of the arm are identified bymonitoring the arm acceleration signal for characteristics that indicatethe arm is being swung rearward. In one example, the acceleration signalis analyzed to identify periods of positive acceleration. In oneexample, an increasing positive acceleration leading to a large positivepeak is identified. In further examples, other algorithms may beutilized to determine the direction which the user arm is being swung.Although the user arm swing may have both a forward/reverse componentand an up/down component, in one example, only sensitivity in theforward/reverse direction is analyzed. In further examples, sensitivityin the up/down direction is analyzed and/or sensitivity in a rotationaldirection about the user torso or left/right direction across the userbody is analyzed in addition to the forward/reverse direction.

The system can be further extended by including in sensor unit 2additional accelerometers oriented to measure arm swing in differentdirections. In a further example, three perpendicularly oriented linearaccelerometers or a triaxial accelerometer sensitive to movement inthree perpendicular directions is utilized to monitor the user arm swingin a plurality of directions, including forward/reverse (e.g., relativeto the direction of locomotion), left/right (e.g., across the user'storso/body towards the opposite arm), and up/down (along an axis definedby and running through the user's head and feet). In one example, theuser arm swing in a left/right direction and up/down direction isdetermined in much the same way as the forward/reverse swing ismeasured. In a further example, rotation of the arm about the user torsocan be measured using a gyroscope.

In one example, a forward/reverse to left/right ratio is calculated. Forexample, where the sensor unit 2 is worn on the left arm, the amount ofdisplacement (or alternatively, acceleration) in the forward directionis compared to the amount of the displacement (or alternatively,acceleration) in the rightward direction.

In a further example, a forward/reverse to up/down ratio is calculated.In a further example, a forward/reverse to rotation ratio is calculated.For any direction, either the displacement or acceleration may bemeasured.

In one example, too much left to right motion of the left arm or rightto left motion of the right arm indicates the user is undesirablyrotating the torso rather than maintaining it in a forward direction.Too much left to right motion of the left arm or right to left motion ofthe right arm may also indicate undesirable running form even when theuser torso is not rotating back and forth during locomotion. Movement ofthe user torso is independently measured using chest mounted sensors asdescribed herein. In one example, the system detects whether the user isundesirably swinging his arms in a left to right manner whilemaintaining a relatively still torso. In one example, the system detectswhether the user is both undesirably swinging his arms in a left toright manner and undesirably rotating his torso during locomotion. Inone example, the system detects whether the user is undesirably rotatingthe user torso even if the arms are maintained in a desiredforward/reverse direction.

In further examples, the user may wear sensor unit 2 on his right arminstead of his left, or the user may wear sensor units having thenecessary functionality of sensor unit 2 on both the left and right armto monitor both arms and determine whether arm motion is symmetrical forboth the left arm and the right arm.

As described previously, a learning/calibration mode (also referred toas a test mode herein) may be utilized to set the threshold values forthe amount of rotation of the torso or left/right movement of the armsbelow which is acceptable and above which is unacceptable. As describedpreviously, during learning mode where the runner is instructed to runwith the desired form, and various parameters are measured correspondingto the desired range of motion. Often, the runner may be able to runwith correct form for a brief time, as in the test mode, but willdeviate if not completely mindful of correct form, as during longertraining runs or races where the runner is otherwise occupied. Thesevalues are then stored and then used to compare to the actual motion ofthe runner during running. If the runner deviates from the testestablished values, an alarm is output. The learning/calibration modemay be utilized to establish threshold values for any monitoredparameter, including opposite arm/leg synchronization, torso verticaldisplacement during locomotion, torso rotation, torso horizontalmovement, arm horizontal movement (e.g., left to right or right toleft), arm rotation (e.g., arm twisting) about the torso.

In the learning mode where the runner consciously minimized movement,the system stores measurements for how much side to side/rotationaltwisting occurred, and up/down movement occurred. Alternatively, valuescan be set at the factory based on tests of other normal users or basedon elite athletes performing at a high level. Also, the settings may bevaried based on a current speed of user. The system allows individualcoaches and users option of modifying settings based on their abilitylevels, natural running style, current running form (e.g., adjustsettings as user improves form), etc.

During running, it is desirable for the user to minimize unnecessarymovement of the torso, either up and down, side to side, orrotational/twisting. In one example, the chest strap includes a rotationsensor to determine torso rotation. Rotation about an axis running thelength of the user torso is measured (e.g., the left shoulder movesforward in the direction of travel while the right shouldersimultaneously moves rearward). In one example, the rotation sensor is apair of spaced substantially parallel accelerometer sensors 50 a and 50b which can be used to calculate angular acceleration based on thedifference of the signals. In another embodiment, the rotation sensor isa gyroscope.

In one example, sensors 50 a and 50 b are triaxial accelerometers,thereby enabling measurement of the user torso in a multitude ofdirections. For example, the two accelerometers are utilized to measurehorizontal (e.g., side to side or left to right) movement of the torsoalong an axis running perpendicular to the vertical length of the torso.

In one example, the chest strap includes at least one accelerometeroriented to measure acceleration along an axis perpendicular to therunning surface (i.e., in a direction running the length of the usertorso). This accelerometer may be utilized to calculate theheight/distance that the torso moves along this axis during location ina manner similar to that described above in calculating distancetravelled of a foot stride in the direction of locomotion. Utilizing achest mounted accelerometer to calculate the distance the runner travelsin the vertical direction (i.e., the vertical displacement height duringthe striding motion) is preferable over utilizing foot mounted sensorsto perform this calculation as calculations are simplified since themotion of the torso during striding is less complex than the user footwhich, for example, travels rearward and upward to a height notrepresentative of the overall vertical displacement height.

In a further example, the chest strap includes at least twoaccelerometers in a substantially mutually perpendicular orientationwhich provide signals for use by the processing system to determineacceleration both along an axis perpendicular to the running surface andalong an axis parallel to the running surface running from the back ofthe user torso to the front of the user torso in the direction oflocomotion. These two accelerometers may be utilized to calculate astriding angle of the torso in the forward and upward direction.

In a further example, in addition to the two accelerometers mounted in asubstantially mutually perpendicular orientation as discussed above, athird accelerometer is included. The third accelerometer is mounted in adirection substantially perpendicular to the other two accelerometers.The acceleration measured by the third accelerometer is used todetermine the amount of motion along an axis running from the left sideof the user body to the right side of the user body (i.e., side to sideor left to right). In general, excess motion in this direction duringrunning is undesirable. In one example, a triaxial accelerometer may beused in place of the one, two, or three accelerometer embodiments tomeasure acceleration in any of the desired directions of motion.

In one example, sensors 50 a and 50 b are two tri-axial accelerometersplaced in parallel within the chest strap on each side of the usertorso. The output of the two tri-axial accelerometers is processed tomeasure vertical displacement height during locomotion, torso rotation,left to right motion, or other undesirable torso motion.

FIG. 7 illustrates an exemplary processing method 700. Accelerationsignals for each accelerometer 702, 704 in the system are sampled andstored for the duration of each user stride and processed as detailed inthe exemplary block diagram of FIG. 7.

At block 706, the acceleration signals output from the foot mountedaccelerometers are conditioned, sampled, and normalized. Similarly, theacceleration signals output from the arm mounted accelerometers areconditioned, sampled, and normalized.

At block 708, the acceleration signals output from the foot mountedaccelerometers 702 are analyzed to determine lift off (e.g., toe-off),air-time, and foot-strike for each stride. At block 710, a footdirection motion is determined. At block 712, the acceleration signalsoutput from the arm mounted accelerometers 704 are analyzed to determinean arm direction motion for each stride.

At block 714, utilizing the foot and arm direction motion, asynchronization parameter 716 is computed and output. For example, theamount of time in which the user foot and arm are moving in a samedirection may be calculated. In one example, the calculatedsynchronization parameter is compared to a threshold value determinedvia a learning mode. In a further example, the calculated synchronizedparameter is compared to a pre-determined value stored duringmanufacturing of the system.

FIG. 8 is a flow diagram illustrating a method for monitoring a userstride in one example. At block 802, a sensor output associated withmovement of a user torso during running is received. At block 804, thesensor output is analyzed to identify an undesirable torso motion. Inone example, the undesirable torso motion is a torso stride angle, atorso vertical displacement, a torso vertical acceleration, or a torsorotation in excess of a threshold value. In one example, the methodfurther includes receiving a user speed data. The threshold value may bedependent on a user speed.

FIG. 9 is a flow diagram illustrating a method for monitoring a userstride in a further example. At block 902, a user vertical displacementduring a running stride is monitored. At block 904, a user motionparameter associated with the running stride is monitored. For example,the user motion parameter is a user horizontal displacement during therunning stride or a user speed during the running stride. At block 906,it is determined whether the user vertical displacement exceeds athreshold value, where the threshold value is dependent on the usermotion parameter.

While the exemplary embodiments of the present invention are describedand illustrated herein, it will be appreciated that they are merelyillustrative and that modifications can be made to these embodimentswithout departing from the spirit and scope of the invention. Forexample, although examples are described with respect to runningactivities, methods and apparatuses described herein may be used forother athletic activities in further examples. Thus, the scope of theinvention is intended to be defined only in terms of the followingclaims as may be amended, with each claim being expressly incorporatedinto this Description of Specific Embodiments as an embodiment of theinvention.

What is claimed is:
 1. A system comprising: one or more memories; one ormore processors coupled to the one or more memories programmed withexecutable instructions, the executable instructions includinginstructions for obtaining a user information comprising a sensorinformation for a user motion activity, wherein the user informationcomprises a vertical motion data comprising a vertical displacementdata, a horizontal motion data comprising a stride length data, arelative motion data obtained from both the vertical displacement dataand the stride length data, and a comparison of the relative motion datato a data stored prior to a start of the user motion activity; and asensor system for collecting the sensor information, the sensor systemcomprising one or more transceivers for transmitting the sensorinformation to the executable instructions.
 2. The system of claim 1,wherein the sensor system comprises a global positioning system unit,and the user information comprises a location data and a speed dataobtained from the global positioning system unit.
 3. The system of claim1, wherein the sensor system comprises a wearable torso sensor systemcomprising: a heart rate monitor to provide a heart rate data; aninertial sensor to provide the vertical motion data; and a wirelesstransceiver to wirelessly transmit a collected wearable torso sensorsystem data to the executable instructions.
 4. The system of claim 3,wherein the sensor system further comprises an arm wearable device, thearm wearable device comprising a second inertial sensor to output asecond inertial sensor data associated with a user arm motion.
 5. Thesystem of claim 1, further comprising a wearable feedback system worn ona user during the user motion activity, wherein the executableinstructions include instructions for adjusting an output at thewearable feedback system in real-time responsive to obtaining thevertical motion data comprising the vertical displacement data, thehorizontal motion data comprising the stride length data, and therelative motion data obtained from both the vertical displacement dataand the stride length data.
 6. The system of claim 5, wherein theinstructions for adjusting the output at the wearable feedback system inreal-time comprise instructions to output a first indication at thewearable feedback system when the relative motion data fall within aparameter range and output a second indication at the wearable feedbacksystem when the relative motion data exceeds a threshold.
 7. The systemof claim 5, wherein the instructions for adjusting the output at thewearable feedback system in real-time comprise instructions to output inreal-time during the user motion activity both (a) an average over atime or a distance of the vertical displacement data, and (b) an averageover the time or the distance of the relative motion data obtained fromboth the vertical displacement data and the stride length data.
 8. Thesystem of claim 1, wherein the relative motion data comprises a relationof the vertical displacement data to the stride length data.
 9. Thesystem of claim 1, further comprising one or more user interfaces,wherein the executable instructions further comprise executableinstructions to output at the one or more user interfaces an indicationof the comparison of the directional energy parameter data to the datastored prior to the start of the user motion activity.
 10. The system ofclaim 1, wherein the data stored prior to the user motion activityutilizes a data determined utilizing measurements of other persons. 11.The system of claim 1, wherein the data stored prior to the start of theuser motion activity comprises a stored value determined utilizingmeasurements of other persons.
 12. The system of claim 1, wherein therelative motion data obtained from both the vertical displacement dataand the stride length data comprises a ratio data of the verticaldisplacement data to the stride length data.
 13. A method comprising:obtaining a vertical motion data during a user motion activity, thevertical motion data collected using a sensor system comprising one ormore inertial sensors and a global positioning system unit; obtaining ahorizontal motion data comprising a stride length data and a speed dataduring the user motion activity, the horizontal motion data collectedusing the sensor system; obtaining a motion data generated utilizingboth the vertical motion data and the stride length data during the usermotion activity; and providing at a wearable device user interface areal-time feedback of the vertical motion data, the horizontal motiondata, and the motion data generated utilizing both the vertical motiondata and the stride length data.
 14. The method of claim 13, wherein thesensor system comprises: a first device for wearing on a usercomprising: a first inertial sensor from the one or more inertialsensors arranged to output the vertical motion data; a first wirelesstransceiver to wirelessly transmit the vertical motion data; and asecond device for wearing on a user arm comprising: the wearable deviceuser interface; the global positioning system unit; and a secondwireless transceiver to receive the vertical motion data.
 15. The methodof claim 14, wherein the second device for wearing on the user armfurther comprises a second inertial sensor to output a second inertialsensor data associated with a user arm motion.
 16. The method of claim13, wherein the vertical motion data comprises a vertical displacementdata and an average vertical displacement data over a time, and whereinthe motion data generated utilizing both the vertical motion data andthe stride length data comprises a ratio data of the verticaldisplacement data to the stride length data and an average ratio data ofthe vertical displacement data to the stride length data over the time.17. The method of claim 13, wherein the real-time feedback comprises analert when the speed data fall outside a user-defined conditioncomprising an acceptable parameter range, threshold, or variance. 18.The method of claim 13, further comprising: obtaining an average of thevertical motion data over a time or a distance; obtaining an average ofthe motion data generated utilizing the vertical motion data and thestride length data over the time or the distance; obtaining a stepcadence data; and providing at the wearable device user interface areal-time feedback of the average of the vertical motion data over thetime or the distance, the average of the motion data generated utilizingthe vertical motion data and the stride length data over the time or thedistance, and the step cadence data.
 19. The method of claim 13, furthercomprising outputting an indication at a user interface determined froma data stored prior to the user motion activity and the motion datagenerated utilizing both the vertical motion data and the stride lengthdata.
 20. The method of claim 13, further comprising outputting acomparison indication at a user interface resulting from a comparison ofthe motion data generated utilizing both the vertical motion data andthe stride length data to a data determined from other persons.
 21. Themethod of claim 13, wherein the motion data generated utilizing both thevertical motion data and the stride length data comprises a ratio dataof the vertical motion data to the stride length data, and wherein themethod further includes outputting an indication at an output userinterface resulting from identifying the ratio data of the verticalmotion data to the stride length data exceeds a pre-determined value.22. A system comprising: a sensor system to transmit sensor outputsduring a user motion activity for obtaining a vertical motion data, astride length data, a cadence data, and a speed data, wherein the sensorsystem comprises: a global positioning system unit; and one or moreaccelerometers; one or more user interfaces, the one or more userinterfaces comprising a wearable user interface viewable during the usermotion activity; one or more processors; and one or more memoriescomprising executable instructions executable by the one or moreprocessors, the executable instructions comprising instructions foroutputting a relative motion data generated from both the verticalmotion data and the stride length data, the executable instructionsfurther comprising instructions for providing at the wearable userinterface viewable during the user motion activity a real-time feedbackof the relative motion data, the vertical motion data, the stride lengthdata, the cadence data, and the speed data.
 23. The system of claim 22,wherein the one or more accelerometers are disposed at a first wearabledevice and arranged to output the vertical motion data, the firstwearable device comprising a first wireless transceiver to wirelesslytransmit the vertical motion data, and wherein the global positioningsystem unit is disposed at a second wearable device arranged to be wornon a user arm, the second wearable device comprising the wearable userinterface viewable during the user motion activity and a second wirelesstransceiver to receive the vertical motion data.
 24. The system of claim22, wherein the first wearable device is arranged to be worn on a usertorso and further comprises a heart rate monitor, and wherein the secondwearable device further comprises an inertial sensor to detect a userarm motion.
 25. The system of claim 22, wherein the executableinstructions further comprise executable instructions to output at auser interface of the one or more user interfaces an indicationdetermined from a comparison of the relative motion data to a datastored prior to the user motion activity.
 26. The system of claim 25,wherein the data stored prior to the user motion activity comprises astored value determined utilizing measurements of other persons.
 27. Thesystem of claim 25, wherein the relative motion data comprises a ratiodata of the vertical motion data to the stride length data.
 28. Thesystem of claim 22, wherein the relative motion data comprises a ratiodata of the vertical motion data to the stride length data, and whereinthe executable instructions further comprise executable instructions toautomatically determine an indication at a user interface of the one ormore user interfaces resulting from identifying the relative motion dataexceeds a pre-determined value.
 29. The system of claim 22, wherein thereal-time feedback comprises an alert at the wearable user interfaceviewable during the user motion activity when the speed data falloutside a user-defined condition comprising an acceptable range,threshold, or variance.
 30. The system of claim 22, wherein the relativemotion data generated from both the vertical motion data and the stridelength data comprises a comparison of the vertical motion data and thestride length data.
 31. The system of claim 22, wherein the verticalmotion data comprises an average over a time or a distance of thevertical motion data, and the relative motion data comprises an averageover the time or the distance of the relative motion data generated fromboth the vertical motion data and the stride length data.
 32. A devicecomprising: a global positioning system unit; a transceiver; one or moreaccelerometers; one or more user interfaces; one or more processors; andone or more memories comprising executable instructions executable bythe one or more processors, the executable instructions comprisinginstructions for obtaining a user information comprising a sensorinformation for a user motion activity, wherein the user informationcomprises a vertical displacement data, a stride length data, a relativemotion data obtained from both the vertical displacement data and thestride length data, a cadence data, and a speed data, the executableinstructions further comprising instructions for adjusting an output atthe one or more user interfaces in real-time responsive to obtaining thevertical displacement data, the stride length data, the relative motiondata obtained from both the vertical displacement data and the stridelength data, the cadence data, and the speed data, and wherein theexecutable instructions further comprising instructions for adjustingthe output at the one or more user interfaces in real-time when therelative motion data obtained from both the vertical displacement dataand the stride length data exceeds a predetermined value.
 33. The deviceof claim 32, wherein the predetermined value is determined utilizingmeasurements of other persons and is stored in the one or more memoriesprior to a start of the user motion activity.
 34. The device of claim32, wherein the executable instructions further comprise instructionsfor providing an indication at the one or more user interfaces when therelative motion data obtained from both the vertical displacement dataand the stride length data falls within a parameter range.
 35. Thedevice of claim 32, wherein the executable instructions further compriseinstructions for providing an indication at the one or more userinterfaces when the vertical displacement data falls within a parameterrange.
 36. The device of claim 32, wherein the executable instructionsfurther comprise instructions for receiving at the device one or more ofthe vertical displacement data, the stride length data, the relativemotion data obtained from both the vertical displacement data and thestride length data, and the cadence data from a first electronic deviceutilizing the transceiver and instructions for transmitting from thedevice one or more of the vertical displacement data, the stride lengthdata, the relative motion data obtained from both the verticaldisplacement data and the stride length data, and the cadence data to asecond electronic device utilizing the transceiver.
 37. The device ofclaim 32, wherein the sensor information comprises information obtainedutilizing the transceiver.
 38. The device of claim 32, furthercomprising a gyroscope, wherein the user information further comprises auser arm motion obtained from a sensor output of the one or moreaccelerometers or a sensor output of the gyroscope.
 39. The device ofclaim 32, wherein the executable instructions further comprisinginstructions for adjusting the output at the one or more user interfacesin real-time to output during the user motion activity both (a) anaverage over a time or a distance of the vertical displacement data, and(b) an average over the time or the distance of the relative motion dataobtained from both the vertical displacement data and the stride lengthdata.
 40. The device of claim 32, wherein the relative motion dataobtained from both the vertical displacement data and the stride lengthdata comprises a ratio data of the vertical displacement data to thestride length data.
 41. The device of claim 32, wherein the speed datais obtained from the global positioning system unit and the cadence datais obtained from the one or more accelerometers.
 42. The device of claim32, wherein adjusting the output at the one or more user interfaces inreal-time when the relative motion data obtained from both the verticaldisplacement data and the stride length data exceeds the predeterminedvalue comprises outputting an indication the vertical displacement dataexceeds a value dependent on the stride length data.
 43. An arm wearabledevice comprising: a global positioning system unit; a wirelesscommunications device; one or more accelerometers; one or more userinterfaces; one or more processors; and one or more memories comprisingexecutable instructions executable by the one or more processors, theexecutable instructions comprising instructions for obtaining a userinformation comprising a sensor information for a user motion activity,wherein the user information comprises a vertical displacement data, astride length data, a relative motion data obtained from both thevertical displacement data and the stride length data, a cadence data,and a speed data, the executable instructions further comprisinginstructions for providing at the one or more user interfaces areal-time feedback of the vertical displacement data, the stride lengthdata, the relative motion data obtained from both the verticaldisplacement data and the stride length data, the cadence data, thespeed data, and an indication when the relative motion data obtainedfrom both the vertical displacement data and the stride length datafalls within a parameter range.
 44. The arm wearable device of claim 43,wherein the relative motion data obtained from both the verticaldisplacement data and the stride length data comprises a ratio data ofthe vertical displacement data to the stride length data, and whereinthe executable instructions further comprise instructions for providinga second indication at the one or more user interfaces when the ratiodata of the vertical displacement data to the stride length data exceedsa threshold value.
 45. The arm wearable device of claim 43, wherein thewireless communications device is configured for wireless communicationsutilizing one or more wireless protocols, the one or more wirelesscommunications protocols comprising a Bluetooth Protocol and an ANTprotocol.
 46. One or more non-transitory computer-readable storage mediahaving computer-executable instructions stored thereon which, whenexecuted by one or more processors, cause the one more processors toperform operations comprising: obtaining a user information comprising asensor information for a user motion activity, wherein the userinformation comprises a step cadence data, a vertical motion datacomprising a vertical displacement data, a horizontal motion data, amotion parameter data to indicate an unnecessary body motion from a datacomprising the vertical motion data and the horizontal motion data, theoperations further comprising adjusting an output at a device userinterface in real-time during the user motion activity responsive toobtaining the motion parameter data to indicate the unnecessary bodymotion from the data comprising the vertical motion data and thehorizontal motion data, the step cadence data, and the vertical motiondata.
 47. The one or more non-transitory computer-readable storage mediaof claim 46, wherein the operations further comprising adjusting asecond output at the device user interface when the motion parameterdata to indicate the unnecessary body motion from the data comprisingthe vertical motion data and the horizontal motion data exceeds apredetermined value.
 48. The one or more non-transitorycomputer-readable storage media of claim 47, wherein the predeterminedvalue is determined utilizing measurements of other persons prior to astart of the user motion activity.
 49. The one or more non-transitorycomputer-readable storage media of claim 46, wherein the operationsfurther comprise adjusting a second output at the device user interfacewhen the motion parameter data to indicate the unnecessary body motionfrom the data comprising the vertical motion data and the horizontalmotion data falls within a parameter range.
 50. The one or morenon-transitory computer-readable storage media of claim 46, wherein thehorizontal motion data comprises a step impact data.
 51. The one or morenon-transitory computer-readable storage media of claim 46, wherein thesensor information comprises a data obtained from one or moreaccelerometers mounted on a user torso.
 52. The one or morenon-transitory computer-readable storage media of claim 46, wherein thevertical motion data further comprises a vertical acceleration data andthe horizontal motion data comprises a horizontal acceleration data, andwherein the motion parameter data to indicate the unnecessary bodymotion from the data comprising the vertical motion data and thehorizontal motion data comprises the vertical acceleration data and thehorizontal acceleration data.
 53. The one or more non-transitorycomputer-readable storage media of claim 46, wherein the horizontalmotion data comprises a stride length data and the motion parameter datato indicate the unnecessary body motion from the data comprising thevertical motion data and the horizontal motion data comprises a ratiodata of the vertical displacement data to the stride length data. 54.The one or more non-transitory computer-readable storage media of claim46, wherein the user information further comprises a speed data obtainedfrom a global positioning system unit located at a first device worn ona first body part, the first device in wireless communication with asecond device worn on a second body part from which the verticaldisplacement data is obtained, and wherein the operations furthercomprise adjusting the output at the device user interface in real-timeduring the user motion activity responsive to obtaining the speed data.55. The one or more non-transitory computer-readable storage media ofclaim 46, wherein the operations further comprise providing anindication at an output user interface that the vertical motion datafalls within a parameter range.
 56. The one or more non-transitorycomputer-readable storage media of claim 46, wherein the horizontalmotion data comprises a stride length data, wherein adjusting the outputat the device user interface in real-time during the user motionactivity responsive to obtaining the motion parameter data to indicatethe unnecessary body motion from the data comprising the vertical motiondata and the horizontal motion data comprises outputting an indicationthe vertical displacement data exceeds a value dependent on the stridelength data.